A database is a collection of stored data that is logically related and that is accessible by one or more users or applications. A popular type of database is the relational database management system (RDBMS), which includes relational tables, also referred to as relations, made up of rows and columns (also referred to as tuples and attributes). Each row represents an occurrence of an entity defined by a table, with an entity being a person, place, thing, or other object about which the table contains information.
One of the goals of a database management system is to optimize the performance of queries for access and manipulation of data stored in the database. Given a target environment, an optimal query plan is selected, with the optimal query plan being the one with the lowest cost, e.g., response time, as determined by an optimizer. The response time is the amount of time it takes to complete the execution of a query on a given system.
In contemporary parallel processing systems in which rows of tables are distributed across multiple processing modules, queries featuring maximum or minimum equality conditions require a table to be read twice to process the query when there is no index on the attribute on which the maximum or minimum equality condition is applied. The system first scans the table to compute the maximum or minimum attribute value, and then the maximum or minimum attribute value is broadcast to every processing module. The system then scans the table again to find records qualified by the identified maximum or minimum attribute value. In systems that feature large tables, the requisite resources consumed for processing such a query often become disadvantageously extensive.